should it be "Speak in good English" instead
Since "good" is an adjective, both Speak
English and Speak in English are correct.
The use of the preposition "in" is
used when English is an adjective.
Example: What language is the Briton using?
Reply: He is speaking in English. (implication of the
collective noun language.)
Note that in this example, the word "English" is an adjective as
there is a collective noun "language" implied.
However, when English is used as a "noun" the preposition is not
required.
Any further debate = 鸡蛋里挑骨头